package com.framework.loippi.entity;

import com.framework.loippi.mybatis.eitity.GenericEntity;
import com.framework.loippi.mybatis.ext.annotation.Column;
import com.framework.loippi.mybatis.ext.annotation.Table;

import org.springframework.format.annotation.DateTimeFormat;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonInclude;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * Entity - 患者表
 *
 * @author wmj
 * @version 2.0
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
@Table(name = "T_USER_PATIENT")
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonIgnoreProperties({"handler", "hibernateLazyInitializer"})
@ApiModel(value = "患者表", description = "患者表")
public class Patient implements GenericEntity {

    private static final long serialVersionUID = 5081846432919091193L;

    /**
     *
     */
    @Column(id = true, name = "id", updatable = false)
    @ApiModelProperty(value = "")
    private Long id;

    /**
     * 关联用户
     */
    @ApiModelProperty("关联用户")
    private TUser user;

    /**
     * 是否删除(0否,1是)
     */
    @Column(name = "is_delete")
    @ApiModelProperty(value = "是否删除(0否,1是)")
    private Integer isDelete;

    /**
     * 姓名
     */
    @Column(name = "name")
    @ApiModelProperty(value = "姓名")
    private String name;

    /**
     * 性别
     */
    @Column(name = "sex")
    @ApiModelProperty(value = "性别")
    private Integer sex;

    /**
     * 年龄
     */
    @Column(name = "age")
    @ApiModelProperty(value = "年龄")
    private Integer age;

    /**
     * 身高
     */
    @Column(name = "height")
    @ApiModelProperty(value = "身高")
    private Integer height;

    /**
     * 体重
     */
    @Column(name = "weight")
    @ApiModelProperty(value = "体重")
    private Integer weight;

    /**
     * 电话
     */
    @Column(name = "phone")
    @ApiModelProperty(value = "电话")
    private String phone;

    /**
     * 地址
     */
    @Column(name = "address")
    @ApiModelProperty(value = "地址")
    private String address;

    /**
     * 创建时间
     */
    @Column(name = "create_time")
    @ApiModelProperty(value = "创建时间")
    private java.util.Date createTime;

    /**
     * 修改时间
     */
    @Column(name = "update_time")
    @ApiModelProperty(value = "修改时间")
    private java.util.Date updateTime;

    /**
     * 用户id
     */
    @Column(name = "user_id")
    @ApiModelProperty(value = "用户id")
    private Long userId;


    /**
     * 诊断说明
     */
    @Column(name = "user_explains")
    @ApiModelProperty(value = "诊断说明")
    private String explains;

}
